1. Technical Field
The present invention relates generally to computer personalization information, and, more particularly, to a migration tool and methods for migrating computer personalization information from one computer to another.
2. Related Art
FIG. 1 illustrates a computer 100 having a processor 102, and also having memory such as RAM and ROM memory 104 which is accessible to the processor 102. The computer 100 includes user I/O components 106, such as a keyboard, monitor or other display, mouse, and/or other I/O device(s) intended to let the computer 100 exchange data with a human user. System I/O components 108 on a given computer 100 may include a diskette drive, IOMEGA Zip disk drive, serial port, parallel port, Universal Serial Bus (xe2x80x9cUSBxe2x80x9d) port, infrared port, radio frequency (xe2x80x9cRFxe2x80x9d) port, network connection, and/or other I/O device(s) intended to permit data exchanges between the computer 100 and another device.
The computer 100 also has a xe2x80x9cdiskxe2x80x9d 110, which may include one or more magnetic disks or other nonvolatile storage media. The disk 110 will often have space 112 which is not yet allocated for use by file system structures 114 or use by the data that is organized by those structures 114. As discussed below and elsewhere herein, the data on the disk 110 typically includes both generic data 116 and personalization data 118.
Examples of generic information 116 include much operating system software, file system software, peripheral device drivers, application software, and their associated help files, associated graphics or sound files, and so on, although each of these may often also be customized in some manner by the inclusion of some personalization information 118. Generic information 116 may be generic because it is being used by many people, or it may be generic because it is in a form suited for installation or use by an as-yet-unspecified person.
For instance, computer vendors typically install an operating system, a set of business applications, some games, and other software on a machine 100. This may be done before the machine is purchased, or it may be done after purchase by using disk images and/or templates that are also used for many or all of the other machines being configured for other purchasers. In either case, most of the installed software information is not specific to any particular person or any particular computer, in the sense that it is interchangeable with copies of that information installed on other computers. Packaged software is also generic, in the sense that much or all of its behavior has not yet been tailored to a specific person or organization.
By contrast, personalization information 118 includes information that pertains specifically to a given user or specific subset of all users. Examples include: personal information such as a user""s name, a licensee/owner""s business name, and contact information such as postal or email addresses and telephone numbers; personal preferences of the type typically set through software tools such as xe2x80x9cOptionsxe2x80x9d, xe2x80x9cPreferencesxe2x80x9d, xe2x80x9cCustomizexe2x80x9d, or similar menu entries; passwords; user data, such as spreadsheets, presentations, graphics, databases, contact lists, address books, and word processor files created by a particular user or by a business or personal contact of the user; and tailored system configuration data, such as programs to run on starting the system 100, other system settings, Ethernet or IP addresses, licensed software serial numbers or Security IDs, and information of the type found in the config.sys,*.ini, autoexec.bat, and registry files in many Microsoft operating system environments.
Various tools and techniques focused on managing personalization information are conventionally known, including examples such as: tools for editing a registry; tools for preventing transmission of personal information such as a social security number or credit card number; tools for recovering forgotten passwords; and various tools for saving and restoring information from files such as WIN.INI, SYSTEM.INI, CONFIG. SYS, AUTOEXEC.BAT, and the Microsoft Windows Registry.
In particular, tools and techniques for migrating personalization information between computers are known. For instance, as illustrated in FIG. 2, tools and techniques are available for reading personalization data 118 (FIG. 1) from a source computer 200 (FIG. 2), sending it over a network connection to a network server 202, and then sending it from the server 202 over a network connection to a destination computer 204. In a peer-to-peer network, personalization data 118 may similarly be sent over a network connection from the source computer 200 directly to the destination computer 204.
As illustrated in FIG. 3, tools and techniques are also available for transferring personalization data 118 from a source computer 300 to a destination computer 304 when the computers 300, 304 do not necessarily have network connections. Using a system I/O device 108 (FIG. 1) such as a tape drive or diskette drive, the personalization data 118 is sent to an intermediate storage medium 302 by a transport application 306 that runs on the computers 300, 304. Unlike the network transfer scenario, the transport application 306 in this case does not necessarily run on both computers 300, 304 at the same time.
Various types of transport applications 306 exist, such as disk imaging applications 306, migration applications 306, and registry management applications 306. Disk imaging applications 306 read the disk 110 of the source computer 300 and create an image of the disk 110 on the storage 302. The image can then be restored to the source computer 300 after the data on that computer is damaged, for instance. The image can also be copied to the disk of a different computer, such as the destination computer 304. The image often includes personalization data 118. However, disk imaging applications 306 do not normally distinguish between generic data 116 and personalization data 118, although users may be able to specify which partitions or files are imaged or restored from an image.
Migration applications 306 are specifically designed to transfer application programs, system settings, application settings, data files, and applications between machines. However, other types of personalization data 118 are not necessarily identified, much less transferred. Conventional migration applications 306 also run on the source and destination computers, and use either a network connection or unassisted intermediate storage 302 to transfer the data 118. Thus, resource and security constraints are imposed.
Registry management applications 306 likewise permit one to transfer specified application programs and their associated information from one computer 300 to another computer 304. The associated information includes information kept in the registry on Microsoft Windows systems. Registry information is an example of personalization data 118. However, registry management applications 306 do not necessarily identify personalization data 118 that is not needed to transfer an application program between computers. Moreover, registry management applications 306 run on the source 300 and destination 304 computers, using the underlying operating system and file system of the computers 300, 304
In view of the foregoing, there is a need in the art for a migration tool and methods for migrating computer personalization information from one computer to another when a network is not available, when a network is available but use of the network is undesirable for some reason, and/or when the computer which is the source of the data being migrated has limited or unknown resources to support conventional forms of data migration.
The present invention addresses the problem of migrating personalization information from one computer to another. More particularly, the invention addresses migration of personalization data when a network is not available, when a network is available but use of the network is undesirable for some reason, and/or when the computer which is the source of the data being migrated has limited or unknown resources to support conventional forms of data migration.
In a first aspect of the invention is provided a method for migrating personalization data from a source computer to a destination computer, comprising the steps of connecting to the source computer a migration tool having a processor, memory, and means for identifying personalization data; copying personalization data from the source computer to the migration tool using a minimal file system on the source computer and without using a network; connecting the migration tool to the destination computer; and transferring personalization data from the migration tool to the destination computer using a minimal file system on the destination computer and without using a network.
In a second aspect of the invention is provided a migration tool comprising a memory in operable communication with a processor, a means for exchanging information with another computer, and a means of using the memory and processor for identifying personalization data.
In a third aspect of the invention is provided a signal set embodied in a computer, the signal set comprising the combination of a command to read data, personalization data read in response to the command, and minimal migration file system software used to read the personalization data from a source computer disk.
A fourth aspect of the invention provides a method comprising the steps of connecting a migration tool to a source computer, requesting information from the source computer, analyzing the information received, identifying personalization information to be retrieved, and retrieving at least a portion of the identified personalization information.
The foregoing and other features and advantages of the invention will be apparent from the following more particular description of preferred embodiments of the invention.